/**
* DirectShow video capture java binding<br>
* Require Win32 DirectX9+ & java1.5+<br>
* Any feedback is welcome.
* e-mail: kobevaliant@gmail.com
* @author kobe
* @See CaptureDevice.java
* @see Test
*/

#define JNIDLLAPI(method, returnType) JNIEXPORT returnType JNICALL Java_kobetool_dshowwrapper_CaptureDevice_##method
extern "C" 
{
	JNIDLLAPI(enumDevices, jobject)(JNIEnv *, jclass);

	JNIDLLAPI(start, jboolean)(JNIEnv *, jobject, jobject videoFormat, jboolean hFlip);

	JNIDLLAPI(stop, jboolean)(JNIEnv *, jobject);

	JNIDLLAPI(destroy, jboolean)(JNIEnv *, jobject);

	JNIDLLAPI(grab, jobject)(JNIEnv *, jobject, jobject buffer);

	JNIDLLAPI(paint, void)(JNIEnv *, jobject, jobject);

	JNIDLLAPI(setBounds, void)(JNIEnv *, jobject, jint x, jint y, jint width, jint height);

	JNIDLLAPI(isRunning, jboolean)(JNIEnv *, jobject);

	JNIDLLAPI(getFormat, jobject)(JNIEnv *, jobject);

	JNIDLLAPI(queryFormats, jobject)(JNIEnv *, jobject);
};